package com.bbh.plugin.single.privilege.core.entity;

import javax.persistence.Column;
import javax.persistence.Id;
import javax.persistence.Table;
import java.util.Date;

@Table(name = "t_mail_account")
public class MailAccount {
    @Id
    private String id;

    /**
     * 所属应用
     */
    @Column(name = "app_key")
    private String appKey;

    private String host;

    private String username;

    private String password;

    @Column(name = "default_encoding")
    private String defaultEncoding;

    @Column(name = "smtp_auth")
    private Boolean smtpAuth;

    /**
     * 邮箱端口
     */
    private Integer port;

    /**
     * 使用gmail smtp server的必须参数
     */
    @Column(name = "smtp_starttls_enable")
    private Boolean smtpStarttlsEnable;

    /**
     * 是否启用ssl
     */
    @Column(name = "smtp_ssl")
    private Boolean smtpSsl;

    /**
     * 描述
     */
    private String description;

    @Column(name = "mail_account_type")
    private String mailAccountType;

    @Column(name = "create_by")
    private String createBy;

    @Column(name = "create_time")
    private Date createTime;

    @Column(name = "modify_by")
    private String modifyBy;

    @Column(name = "modify_time")
    private Date modifyTime;

    /**
     * @return id
     */
    public String getId() {
        return id;
    }

    /**
     * @param id
     */
    public void setId(String id) {
        this.id = id;
    }

    public String getAppKey() {
        return appKey;
    }

    public void setAppKey(String appKey) {
        this.appKey = appKey;
    }

    /**
     * @return host
     */
    public String getHost() {
        return host;
    }

    /**
     * @param host
     */
    public void setHost(String host) {
        this.host = host;
    }

    /**
     * @return username
     */
    public String getUsername() {
        return username;
    }

    /**
     * @param username
     */
    public void setUsername(String username) {
        this.username = username;
    }

    /**
     * @return password
     */
    public String getPassword() {
        return password;
    }

    /**
     * @param password
     */
    public void setPassword(String password) {
        this.password = password;
    }

    /**
     * @return default_encoding
     */
    public String getDefaultEncoding() {
        return defaultEncoding;
    }

    /**
     * @param defaultEncoding
     */
    public void setDefaultEncoding(String defaultEncoding) {
        this.defaultEncoding = defaultEncoding;
    }

    /**
     * @return smtp_auth
     */
    public Boolean getSmtpAuth() {
        return smtpAuth;
    }

    /**
     * @param smtpAuth
     */
    public void setSmtpAuth(Boolean smtpAuth) {
        this.smtpAuth = smtpAuth;
    }

    /**
     * 获取邮箱端口
     *
     * @return port - 邮箱端口
     */
    public Integer getPort() {
        return port;
    }

    /**
     * 设置邮箱端口
     *
     * @param port 邮箱端口
     */
    public void setPort(Integer port) {
        this.port = port;
    }

    /**
     * 获取使用gmail smtp server的必须参数
     *
     * @return smtp_starttls_enable - 使用gmail smtp server的必须参数
     */
    public Boolean getSmtpStarttlsEnable() {
        return smtpStarttlsEnable;
    }

    /**
     * 设置使用gmail smtp server的必须参数
     *
     * @param smtpStarttlsEnable 使用gmail smtp server的必须参数
     */
    public void setSmtpStarttlsEnable(Boolean smtpStarttlsEnable) {
        this.smtpStarttlsEnable = smtpStarttlsEnable;
    }

    /**
     * 获取是否启用ssl
     *
     * @return smtp_ssl - 是否启用ssl
     */
    public Boolean getSmtpSsl() {
        return smtpSsl;
    }

    /**
     * 设置是否启用ssl
     *
     * @param smtpSsl 是否启用ssl
     */
    public void setSmtpSsl(Boolean smtpSsl) {
        this.smtpSsl = smtpSsl;
    }

    /**
     * 获取描述
     *
     * @return description - 描述
     */
    public String getDescription() {
        return description;
    }

    /**
     * 设置描述
     *
     * @param description 描述
     */
    public void setDescription(String description) {
        this.description = description;
    }

    /**
     * @return mail_account_type
     */
    public String getMailAccountType() {
        return mailAccountType;
    }

    /**
     * @param mailAccountType
     */
    public void setMailAccountType(String mailAccountType) {
        this.mailAccountType = mailAccountType;
    }

    /**
     * @return create_by
     */
    public String getCreateBy() {
        return createBy;
    }

    /**
     * @param createBy
     */
    public void setCreateBy(String createBy) {
        this.createBy = createBy;
    }

    /**
     * @return create_time
     */
    public Date getCreateTime() {
        return createTime;
    }

    /**
     * @param createTime
     */
    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    /**
     * @return modify_by
     */
    public String getModifyBy() {
        return modifyBy;
    }

    /**
     * @param modifyBy
     */
    public void setModifyBy(String modifyBy) {
        this.modifyBy = modifyBy;
    }

    /**
     * @return modify_time
     */
    public Date getModifyTime() {
        return modifyTime;
    }

    /**
     * @param modifyTime
     */
    public void setModifyTime(Date modifyTime) {
        this.modifyTime = modifyTime;
    }
}